export default {
  methods: {
    formatNumber(number: number | string): string {
      // 如果数字为0、0.0、0.00，则返回空字符串
      if (number === 0 || number.toString() === "0.0" || number.toString() === "0.00") {
        return '             ' // 13个空格字符
      }

      // 拆分为整数部分和小数部分，如果有小数的话
      const numberString = number.toString()
      const parts = numberString.split(".")

      // 提取整数部分
      const integerPart = parts[0] // 第一部分

      // 提取小数部分，如果没有小数部分，则将其设置为两个空格
      const decimalPart = parts[1] || " " + " "

      let num1 = integerPart
      let num2 = decimalPart

      // 如果整数部分的第一位是数字0，就去掉0
      if (num1.length > 0 && num1[0] === "0") {
        num1 = num1.substring(1)
      }

      // 如果只有整数部分，小数部分补两个0
      if (num1.length !== 0) {
        num2 = parts[1] || "0" + "0"
      } else {
        num2 = parts[1] || " " + " "
      }

      // 将整数部分左侧填充空格，使其总宽度为11个字符
      const paddedIntegerPart = num1.padStart(11, " ")

      // 提取小数部分的前两位数字，以确保小数位数最多为2位
      const paddedDecimalPart = num2.length === 1 ? num2 + "0" : num2

      // 返回格式化后的字符串，小数部分如果不足2位则用0来填充
      return `${paddedIntegerPart}${paddedDecimalPart}`
    }
  }
}
